home *** CD-ROM | disk | FTP | other *** search
-
-
-
- MAKEDEPEND User Commands MAKEDEPEND
-
-
-
- _________________________________________________________________
-
- NNAAMMEE
- makedepend - Generate dependency list for make
-
- SSYYNNOOPPSSIISS
- mmaakkeeddeeppeenndd [_o_p_t_i_o_n_s] _f_i_l_e _f_i_l_e ...
-
- OOPPTTIIOONNSS
- --DD _d_e_f Define a macro. This argument has the
- same meaning as the corresponding argu-
- ment to cccc.
-
- --ff _m_a_k_e_f_i_l_e Use _m_a_k_e_f_i_l_e as the makefile to modify.
- If _m_a_k_e_f_i_l_e is ``-'', mmaakkeeddeeppeenndd will
- simply print dependency information on
- standard output. _M_a_k_e_f_i_l_e defaults to
- mmaakkeeffiillee if it exists, otherwise
- MMaakkeeffiillee.
-
- --II _i_n_c_l_u_d_e_D_i_r Search for include files in _i_n_c_l_u_d_e_D_i_r
- before looking in the default system
- directories. If there are many --II argu-
- ments, the directories are searched in
- the same order as the arguments.
-
- --mm _t_m Use _t_m as the target machine for gen-
- erating dependencies. The target
- machine determines where mmaakkeeddeeppeenndd
- looks for machine-dependent header files
- (see below). If this option is not
- specified, the target machine defaults
- to the value of the $$MMAACCHHIINNEE environment
- variable.
-
- --oo _s_u_f_f_i_x Use _s_u_f_f_i_x as the suffix for the
- ``object'' files listed in the output.
- If this argument is not specified, the
- suffix defaults to ..oo.
-
- --pp Output the full path name for each
- include file. If this switch isn't
- specified, then only the include file
- name given in the ##iinncclluuddee statement is
- output.
-
- --ss _s_t_r_i_n_g If this switch is given, _s_t_r_i_n_g speci-
- fies the comment string that identifies
- the beginning of dependencies in the
- makefile. _S_t_r_i_n_g must start with the
- comment character ``#''.
-
-
-
-
- Sprite v.1.0 Printed: January 29, 1992 1
-
-
-
-
-
-
- MAKEDEPEND User Commands MAKEDEPEND
-
-
-
- --vv Verbose mode. For each file included by
- one of the _f_i_l_es, output a sequence of
- comment lines that list the other
- include files included by that include
- file.
-
- --ww _w_i_d_t_h Try to arrange for output lines not to
- contain more than _w_i_d_t_h characters
- total. If a single _f_i_l_e has multiple
- dependencies then they will be grouped
- onto a single line in the output file
- unless this grouping would cause the
- output line to exceed _w_i_d_t_h characters
- in length.
-
- _________________________________________________________________
-
-
- DDEESSCCRRIIPPTTIIOONN
- MMaakkeeddeeppeenndd is a program that generates dependency lines for
- makefiles. It reads a collection of C source files given by
- the _f_i_l_e arguments and generates a collection of lines each
- having the form
-
- ffiillee..oo:: xx..hh yy..hh //aa//bb//cc..hh
-
- These dependency lines describe all of the include files
- used directly or indirectly in compiling each source _f_i_l_e.
-
- MMaakkeeddeeppeenndd normally inserts the dependency lines into the
- file mmaakkeeffiillee if it exists, or MMaakkeeffiillee otherwise (see the
- --ff option for other alternatives). To insert the dependen-
- cies in a makefile, mmaakkeeddeeppeenndd searches the makefile for a
- trigger line. Usually the trigger line is
-
- ## DDOO NNOOTT DDEELLEETTEE TTHHIISS LLIINNEE ---- mmaakkee ddeeppeenndd ddeeppeennddss oonn iitt..
-
- but a different trigger string may be selected with the --ss
- switch. MMaakkeeddeeppeenndd locates the trigger line, deletes all of
- the information after the trigger line, and replaces it with
- the dependency lines. A backup copy of the original
- makefile is saved in _m_a_k_e_f_i_l_e..bbaakk~~, where _m_a_k_e_f_i_l_e is the
- name of the original makefile.
-
- MMaakkeeddeeppeenndd duplicates the actions of cccc in determining which
- include files are required for each _f_i_l_e. It normally
- checks for include files in the current directory, then in
- //sspprriittee//lliibb//iinncclluuddee, then in //sspprriittee//lliibb//iinncclluuddee//_t_m..mmdd
- (where _t_m is the target machine being compiled for; this is
- either the value of the $$MMAACCHHIINNEE environment variable or the
- value given in the --mm option). If --II options are given,
- then those directories are searched before the standard sys-
- tem directories. MMaakkeeddeeppeenndd processes conditional compila-
- tion statements such as ##ddeeffiinnee and ##iiffddeeff in a fashion
-
-
-
- Sprite v.1.0 Printed: January 29, 1992 2
-
-
-
-
-
-
- MAKEDEPEND User Commands MAKEDEPEND
-
-
-
- similar to the C preprocessor in order to consider only the
- include files that would be processed by the C compiler.
- You should pass the same --DD options to mmaakkeeddeeppeenndd that you
- would give to cccc. MMaakkeeddeeppeenndd can also deal with ##iiff and |
- ##eelliiff directive, except that the only allowable expressions |
- are ddeeffiinneedd((_f_o_o)) and !!ddeeffiinneedd((_f_o_o)). Any other expression |
- will evaluate to false.
-
- There are several options that control the formatting of the
- dependency lines. Normally, the first field of each output
- line is _x..oo, where _x is one of the _f_i_l_e arguments with the
- ..cc or any other suffix stripped off. However, the --oo option
- may be used to place a suffix other than ..oo in the output
- lines. The --pp option controls how completely the include
- file names are specified in the output. If --pp is given,
- then the complete path name of each header file is output.
- If --pp is not given, then only the name from the actual
- ##iinncclluuddee statement is output (e.g., ssyyss//ffiillee..hh instead of
- //sspprriittee//lliibb//iinncclluuddee//ssyyss//ffiillee..hh). This default is useful for
- Pmake, which manages its own include file search path.
- Finally, the --ww switch may be used to control the length of
- the output lines, and the --vv switch causes extra information
- about nested includes to be output in the form of comment
- lines.
-
-
- SSEEEE AALLSSOO
- mkmf, pmake
-
-
- BBUUGGSS
- Can't handle arbitrary expressions following ##iiff or ##eelliiff. |
-
- Makedepend's algorithm can cause problems in some cases. It |
- only parses each include file once and generates a list of |
- dependencies for that file. However, if defines are set |
- differently, it could be that an include file will depend on |
- two different sets of files in two different invocations. |
- In this case, makedepend will return the wrong dependencies |
- for the second case.
-
-
- KKEEYYWWOORRDDSS
- dependencies, include file, object file
-
-
-
-
-
-
-
-
-
-
-
- Sprite v.1.0 Printed: January 29, 1992 3
-
-
-
-